#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//int fac(int n)
//{
//	if (n <= 2)
//		return 1;
//	else
//		return fac(n - 1) + fac(n - 2);
//}

//int fac(int n)
//{
//	int a = 1;
//	int b = 1;
//	int c = 1;
//	while (n > 2)
//	{
//		c = a + b;
//		a=b;
//		b=c;
//		n--;
//	}
//	return c;
//}
//
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	printf("%d",fac(n));
//	return 0;
//}





//#include<stdio.h>
//int  fac(int n)
//{
//	if (n > 1)
//		return n * fac(n - 1);
//	else if (n == 1)
//		return 1;
//	else
//		return 0;
//}

//int fac(int n)
//{
//	int i = 1;
//	int k = 1;
//	for (i = 1; i <= n; i++)
//		k *= i;
//	return k;
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	printf("%d ",fac(n));
//}

#include<stdio.h>
#include<string.h>
//void reverse_string(char* arr)
//{
//	int right=strlen(arr)-1;
//	int left =0;
//	while (left <= right)
//	{
//		char u = arr[left];
//		arr[left]=arr[right];
//	    arr[right]= u;
//		left++;
//		right--;
//	}
//
//}

void reverse_string(char* arr)
{
	int lenth = strlen(arr);
	char* tmp = *arr;
	*arr = *(arr + lenth - 1);
	*(arr + lenth - 1) = '\0';
	if (strlen(arr + 1) >= 2)
	{
		reverse_string(arr + 1);
	}
	*(arr + lenth - 1) = tmp;


}
int main()
{
	char arr[] = "abcdef";
	reverse_string(arr);
	printf("%s",arr);
}